|
TURN(Traversal Using Relay aroud NAT)とは、マルチメディアアプリケーションがNATやファイアウォールを超えて通信することを補助するためのインターネットプロトコルである。TURNが一番役立つのは、TCP,UDPを使って対象型NAT(Symmetric NAT)装置により隠蔽(マスカレード)されたプライベートネットワークに接続されたクライアントを利用する場合である。一方、NATの背後におかれたwell-knownポートを使って動作するサーバに接続する目的には利用できない。TURNはNATの背後にあるシングルピアのユーザ、例えばIP電話、に接続する際に役立つプロトコルである。 TURNはRFC 5766で標準化されており、IPv6用のアップデートはRFC 6156である。TURNが使うURIスキームはRFC 7065に記述されている。 == 概略 == NAT(Network Address Translators)には多くのメリットがある一方で、多くの欠点も持っている。 一番厄介な欠点は、多くの現存するIPアプリケーションに弊害をもたらし、また新しいIPアプリケーションの普及に障害となることである。 どのようにすればNATの下でも機能するプロトコルが作れるかを記述したガイドラインが数多く開発されてきた。 しかし、多くのプロトコルがそれらのガイドラインに沿って作ることができなかった。構築できなかったプロトコルの例としては、マルチメディアアプリケーションやファイル共有関連のプロトコルがある。 STUN(Session Traversal Utilities for NAT)は、アプリケーションがNATを越えるための1つの方法を提供する。 STUNはクライアントがピアからのパケットを受信するために利用するトランスポートアドレス(IPアドレスとポート)を入手することを可能にする。 しかしながら、STUNによって入手されたアドレスはすべてのピアに対して利用可能ではないかもしれない。それらのアドレスは、ネットワークのトポロジー的状況に依存して機能する。そのため、STUNはそれ自身ではNAT超えについて完全な解決を提供することはできない。 完全な解決には、インターネットにパケットを送信することができるあらゆるピアから、クライアントがメディアを受けることができるトランスポートアドレスを入手できることが必要である。 これは、インターネット上に存在するサーバを通過したデータに頼ることによってのみ達成することができる。 この仕様はTURN、つまり上記のようなサーバを通過したデータからのIPアドレスやポートをクライアントが獲得することを可能にする通信規格を記述している。 TURNはほとんどの場合にクライアントに接続性を提供するが、それはTURNサーバの提供者にとって高いコストがかかる。 それゆえ、STUNなどの他の手段が利用可能な場合はそちらを利用し、TURNを最終手段として利用することが望ましい。 この方法を達成するために、ICE(Interactive Connectivity Establishment)という方法は、接続性の最適な方法を発見するために使うことができる。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「TURN」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Traversal Using Relays around NAT 」があります。 スポンサード リンク
|